Update cursor theme on wayland
authorMatthias Clasen <mclasen@redhat.com>
Sat, 23 Mar 2013 00:31:50 +0000 (20:31 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Sat, 23 Mar 2013 00:33:47 +0000 (20:33 -0400)
Call the new new api from gtksettings.c when it changes, just
as we do for X11.
https://bugzilla.gnome.org/show_bug.cgi?id=696428

gtk/gtksettings.c

index 3c9036c434830ae067631f653bee701a5a50d175..0288c61716b666f2fdb65709ba81aee891867717 100644 (file)
 #include <pango/pangofc-fontmap.h>
 #endif
 
+#ifdef GDK_WINDOWING_WAYLAND
+#include "wayland/gdkwayland.h"
+#endif
+
 #ifdef GDK_WINDOWING_QUARTZ
 #include "quartz/gdkquartz.h"
 #endif
@@ -2552,23 +2556,27 @@ settings_update_modules (GtkSettings *settings)
 static void
 settings_update_cursor_theme (GtkSettings *settings)
 {
-#ifdef GDK_WINDOWING_X11
-  GdkDisplay *display = gdk_screen_get_display (settings->priv->screen);
   gchar *theme = NULL;
   gint size = 0;
+  GdkDisplay *display = gdk_screen_get_display (settings->priv->screen);
 
-  if (GDK_IS_X11_DISPLAY (display))
-    {
-      g_object_get (settings,
-                    "gtk-cursor-theme-name", &theme,
-                    "gtk-cursor-theme-size", &size,
-                    NULL);
-
-      gdk_x11_display_set_cursor_theme (display, theme, size);
+  g_object_get (settings,
+                "gtk-cursor-theme-name", &theme,
+                "gtk-cursor-theme-size", &size,
+                NULL);
 
-      g_free (theme);
-    }
+#ifdef GDK_WINDOWING_X11
+  if (GDK_IS_X11_DISPLAY (display))
+    gdk_x11_display_set_cursor_theme (display, theme, size);
+  else
+#endif
+#ifdef GDK_WINDOWING_WAYLAND
+  if (GDK_IS_WAYLAND_DISPLAY (display))
+    gdk_wayland_display_set_cursor_theme (display, theme, size);
+  else
 #endif
+    g_warning ("unsupported GDK backend\n");
+  g_free (theme);
 }
 
 static void